package com.zzh.partnersys.search.service;

import com.zzh.partnersys.search.entity.vo.PageResult;
import com.zzh.partnersys.search.entity.vo.TeamSearchVO;
import com.zzh.partnersys.search.entity.vo.UserSearchVO;

/**
 * 搜索服务接口
 *
 * @author zzh
 */
public interface ElasticSearchSearchService {

    /**
     * 推荐相似用户（基于当前用户的 tags 和 personalProfile）
     *
     * @param currentUserId 当前用户ID
     * @param pageNum       页码（从0开始）
     * @param pageSize      每页大小
     * @return 推荐用户列表
     */
    PageResult<UserSearchVO> recommendUsers(Long currentUserId, Integer pageNum, Integer pageSize);

    /**
     * 搜索队伍（基于关键字匹配）
     *
     * @param keyword  搜索关键字
     * @param pageNum  页码（从0开始）
     * @param pageSize 每页大小
     * @return 队伍列表
     */
    PageResult<TeamSearchVO> searchTeams(String keyword, Integer pageNum, Integer pageSize);
}
